<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<!-- NewPage -->
<html lang="en">
<head>
<title>DependencyOptions (Closure Compiler)</title>
<link rel="stylesheet" type="text/css" href="../../../../stylesheet.css" title="Style">
</head>
<body>
<script type="text/javascript"><!--
    if (location.href.indexOf('is-external=true') == -1) {
        parent.document.title="DependencyOptions (Closure Compiler)";
    }
//-->
</script>
<noscript>
<div>JavaScript is disabled on your browser.</div>
</noscript>
<!-- ========= START OF TOP NAVBAR ======= -->
<div class="topNav"><a name="navbar_top">
<!--   -->
</a><a href="#skip-navbar_top" title="Skip navigation links"></a><a name="navbar_top_firstrow">
<!--   -->
</a>
<ul class="navList" title="Navigation">
<li><a href="../../../../overview-summary.html">Overview</a></li>
<li><a href="package-summary.html">Package</a></li>
<li class="navBarCell1Rev">Class</li>
<li><a href="package-tree.html">Tree</a></li>
<li><a href="../../../../deprecated-list.html">Deprecated</a></li>
<li><a href="../../../../index-all.html">Index</a></li>
<li><a href="../../../../help-doc.html">Help</a></li>
</ul>
</div>
<div class="subNav">
<ul class="navList">
<li><a href="../../../../com/google/javascript/jscomp/DefaultPassConfig.html" title="class in com.google.javascript.jscomp"><span class="strong">Prev Class</span></a></li>
<li><a href="../../../../com/google/javascript/jscomp/DiagnosticGroup.html" title="class in com.google.javascript.jscomp"><span class="strong">Next Class</span></a></li>
</ul>
<ul class="navList">
<li><a href="../../../../index.html?com/google/javascript/jscomp/DependencyOptions.html" target="_top">Frames</a></li>
<li><a href="DependencyOptions.html" target="_top">No Frames</a></li>
</ul>
<ul class="navList" id="allclasses_navbar_top">
<li><a href="../../../../allclasses-noframe.html">All Classes</a></li>
</ul>
<div>
<script type="text/javascript"><!--
  allClassesLink = document.getElementById("allclasses_navbar_top");
  if(window==top) {
    allClassesLink.style.display = "block";
  }
  else {
    allClassesLink.style.display = "none";
  }
  //-->
</script>
</div>
<div>
<ul class="subNavList">
<li>Summary:&nbsp;</li>
<li>Nested&nbsp;|&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li><a href="#constructor_summary">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method_summary">Method</a></li>
</ul>
<ul class="subNavList">
<li>Detail:&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li><a href="#constructor_detail">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method_detail">Method</a></li>
</ul>
</div>
<a name="skip-navbar_top">
<!--   -->
</a></div>
<!-- ========= END OF TOP NAVBAR ========= -->
<!-- ======== START OF CLASS DATA ======== -->
<div class="header">
<div class="subTitle">com.google.javascript.jscomp</div>
<h2 title="Class DependencyOptions" class="title">Class DependencyOptions</h2>
</div>
<div class="contentContainer">
<ul class="inheritance">
<li>java.lang.Object</li>
<li>
<ul class="inheritance">
<li>com.google.javascript.jscomp.DependencyOptions</li>
</ul>
</li>
</ul>
<div class="description">
<ul class="blockList">
<li class="blockList">
<dl>
<dt>All Implemented Interfaces:</dt>
<dd>java.io.Serializable</dd>
</dl>
<hr>
<br>
<pre>public class <span class="strong">DependencyOptions</span>
extends java.lang.Object
implements java.io.Serializable</pre>
<div class="block">Options for how to manage dependencies between input files.

 Dependency information is usually pulled out from the JS code by
 looking for primitive dependency functions (like Closure Library's
 goog.provide/goog.require). Analysis of this dependency information is
 controlled by <code>CodingConvention</code>, which lets you define those
 dependency primitives.

 This options class determines how we use that dependency information
 to change how code is built.</div>
<dl><dt><span class="strong">See Also:</span></dt><dd><a href="../../../../serialized-form.html#com.google.javascript.jscomp.DependencyOptions">Serialized Form</a></dd></dl>
</li>
</ul>
</div>
<div class="summary">
<ul class="blockList">
<li class="blockList">
<!-- ======== CONSTRUCTOR SUMMARY ======== -->
<ul class="blockList">
<li class="blockList"><a name="constructor_summary">
<!--   -->
</a>
<h3>Constructor Summary</h3>
<table class="overviewSummary" border="0" cellpadding="3" cellspacing="0" summary="Constructor Summary table, listing constructors, and an explanation">
<caption><span>Constructors</span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colOne" scope="col">Constructor and Description</th>
</tr>
<tr class="altColor">
<td class="colOne"><code><strong><a href="../../../../com/google/javascript/jscomp/DependencyOptions.html#DependencyOptions()">DependencyOptions</a></strong>()</code>&nbsp;</td>
</tr>
</table>
</li>
</ul>
<!-- ========== METHOD SUMMARY =========== -->
<ul class="blockList">
<li class="blockList"><a name="method_summary">
<!--   -->
</a>
<h3>Method Summary</h3>
<table class="overviewSummary" border="0" cellpadding="3" cellspacing="0" summary="Method Summary table, listing methods, and an explanation">
<caption><span>Methods</span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colFirst" scope="col">Modifier and Type</th>
<th class="colLast" scope="col">Method and Description</th>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="../../../../com/google/javascript/jscomp/DependencyOptions.html" title="class in com.google.javascript.jscomp">DependencyOptions</a></code></td>
<td class="colLast"><code><strong><a href="../../../../com/google/javascript/jscomp/DependencyOptions.html#setDependencyPruning(boolean)">setDependencyPruning</a></strong>(boolean&nbsp;enabled)</code>
<div class="block">Enables or disables dependency pruning mode.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../../../../com/google/javascript/jscomp/DependencyOptions.html" title="class in com.google.javascript.jscomp">DependencyOptions</a></code></td>
<td class="colLast"><code><strong><a href="../../../../com/google/javascript/jscomp/DependencyOptions.html#setDependencySorting(boolean)">setDependencySorting</a></strong>(boolean&nbsp;enabled)</code>
<div class="block">Enables or disables dependency sorting mode.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="../../../../com/google/javascript/jscomp/DependencyOptions.html" title="class in com.google.javascript.jscomp">DependencyOptions</a></code></td>
<td class="colLast"><code><strong><a href="../../../../com/google/javascript/jscomp/DependencyOptions.html#setEntryPoints(java.util.Collection)">setEntryPoints</a></strong>(java.util.Collection&lt;java.lang.String&gt;&nbsp;symbols)</code>
<div class="block">Adds a collection of symbols to always keep.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../../../../com/google/javascript/jscomp/DependencyOptions.html" title="class in com.google.javascript.jscomp">DependencyOptions</a></code></td>
<td class="colLast"><code><strong><a href="../../../../com/google/javascript/jscomp/DependencyOptions.html#setMoocherDropping(boolean)">setMoocherDropping</a></strong>(boolean&nbsp;enabled)</code>
<div class="block">Enables or disables moocher dropping mode.</div>
</td>
</tr>
</table>
<ul class="blockList">
<li class="blockList"><a name="methods_inherited_from_class_java.lang.Object">
<!--   -->
</a>
<h3>Methods inherited from class&nbsp;java.lang.Object</h3>
<code>clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait</code></li>
</ul>
</li>
</ul>
</li>
</ul>
</div>
<div class="details">
<ul class="blockList">
<li class="blockList">
<!-- ========= CONSTRUCTOR DETAIL ======== -->
<ul class="blockList">
<li class="blockList"><a name="constructor_detail">
<!--   -->
</a>
<h3>Constructor Detail</h3>
<a name="DependencyOptions()">
<!--   -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>DependencyOptions</h4>
<pre>public&nbsp;DependencyOptions()</pre>
</li>
</ul>
</li>
</ul>
<!-- ============ METHOD DETAIL ========== -->
<ul class="blockList">
<li class="blockList"><a name="method_detail">
<!--   -->
</a>
<h3>Method Detail</h3>
<a name="setDependencySorting(boolean)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setDependencySorting</h4>
<pre>public&nbsp;<a href="../../../../com/google/javascript/jscomp/DependencyOptions.html" title="class in com.google.javascript.jscomp">DependencyOptions</a>&nbsp;setDependencySorting(boolean&nbsp;enabled)</pre>
<div class="block">Enables or disables dependency sorting mode.

 If true, we will sort the input files based on dependency information
 in them. Otherwise, we will use the order of files specified
 on the command-line.</div>
<dl><dt><span class="strong">Returns:</span></dt><dd>this for easy building.</dd></dl>
</li>
</ul>
<a name="setDependencyPruning(boolean)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setDependencyPruning</h4>
<pre>public&nbsp;<a href="../../../../com/google/javascript/jscomp/DependencyOptions.html" title="class in com.google.javascript.jscomp">DependencyOptions</a>&nbsp;setDependencyPruning(boolean&nbsp;enabled)</pre>
<div class="block">Enables or disables dependency pruning mode.

 In dependency pruning mode, we will look for all files that provide a
 symbol. Unless that file is a transitive dependency of a file that
 we're using, we will remove it from the compilation job.

 This does not affect how we handle files that do not provide symbols.
 See setMoocherDropping for information on how these are handled.</div>
<dl><dt><span class="strong">Returns:</span></dt><dd>this for easy chaining.</dd></dl>
</li>
</ul>
<a name="setMoocherDropping(boolean)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setMoocherDropping</h4>
<pre>public&nbsp;<a href="../../../../com/google/javascript/jscomp/DependencyOptions.html" title="class in com.google.javascript.jscomp">DependencyOptions</a>&nbsp;setMoocherDropping(boolean&nbsp;enabled)</pre>
<div class="block">Enables or disables moocher dropping mode.

 A 'moocher' is a file that does not provide any symbols (though they
 may require symbols). This is usually because they don't want to
 tie themselves to a particular dependency system (e.g., Closure's
 goog.provide, CommonJS modules). So they rely on other people to
 manage dependencies on them.

 If true, we drop these files when we prune dependencies.
 If false, we always keep these files an anything they depend on.
 The default is false.

 Notice that this option only makes sense if dependency pruning is on,
 and a set of entry points is specified.</div>
<dl><dt><span class="strong">Returns:</span></dt><dd>this for easy chaining.</dd></dl>
</li>
</ul>
<a name="setEntryPoints(java.util.Collection)">
<!--   -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>setEntryPoints</h4>
<pre>public&nbsp;<a href="../../../../com/google/javascript/jscomp/DependencyOptions.html" title="class in com.google.javascript.jscomp">DependencyOptions</a>&nbsp;setEntryPoints(java.util.Collection&lt;java.lang.String&gt;&nbsp;symbols)</pre>
<div class="block">Adds a collection of symbols to always keep.

 In dependency pruning mode, we will automatically keep all the
 transitive dependencies of these symbols.

 The syntactic form of a symbol depends on the type of dependency
 primitives we're using. For example, goog.provide('foo.bar')
 provides the symbol 'foo.bar'.

 Entry points can be scoped to a module by specifying 'mod2:foo.bar'.</div>
<dl><dt><span class="strong">Returns:</span></dt><dd>this for easy chaining.</dd></dl>
</li>
</ul>
</li>
</ul>
</li>
</ul>
</div>
</div>
<!-- ========= END OF CLASS DATA ========= -->
<!-- ======= START OF BOTTOM NAVBAR ====== -->
<div class="bottomNav"><a name="navbar_bottom">
<!--   -->
</a><a href="#skip-navbar_bottom" title="Skip navigation links"></a><a name="navbar_bottom_firstrow">
<!--   -->
</a>
<ul class="navList" title="Navigation">
<li><a href="../../../../overview-summary.html">Overview</a></li>
<li><a href="package-summary.html">Package</a></li>
<li class="navBarCell1Rev">Class</li>
<li><a href="package-tree.html">Tree</a></li>
<li><a href="../../../../deprecated-list.html">Deprecated</a></li>
<li><a href="../../../../index-all.html">Index</a></li>
<li><a href="../../../../help-doc.html">Help</a></li>
</ul>
</div>
<div class="subNav">
<ul class="navList">
<li><a href="../../../../com/google/javascript/jscomp/DefaultPassConfig.html" title="class in com.google.javascript.jscomp"><span class="strong">Prev Class</span></a></li>
<li><a href="../../../../com/google/javascript/jscomp/DiagnosticGroup.html" title="class in com.google.javascript.jscomp"><span class="strong">Next Class</span></a></li>
</ul>
<ul class="navList">
<li><a href="../../../../index.html?com/google/javascript/jscomp/DependencyOptions.html" target="_top">Frames</a></li>
<li><a href="DependencyOptions.html" target="_top">No Frames</a></li>
</ul>
<ul class="navList" id="allclasses_navbar_bottom">
<li><a href="../../../../allclasses-noframe.html">All Classes</a></li>
</ul>
<div>
<script type="text/javascript"><!--
  allClassesLink = document.getElementById("allclasses_navbar_bottom");
  if(window==top) {
    allClassesLink.style.display = "block";
  }
  else {
    allClassesLink.style.display = "none";
  }
  //-->
</script>
</div>
<div>
<ul class="subNavList">
<li>Summary:&nbsp;</li>
<li>Nested&nbsp;|&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li><a href="#constructor_summary">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method_summary">Method</a></li>
</ul>
<ul class="subNavList">
<li>Detail:&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li><a href="#constructor_detail">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method_detail">Method</a></li>
</ul>
</div>
<a name="skip-navbar_bottom">
<!--   -->
</a></div>
<!-- ======== END OF BOTTOM NAVBAR ======= -->
</body>
</html>
